package per.hx.bs.yw.dao;

import org.springframework.stereotype.Component;
import per.hx.bs.base.dao.CrudDao;
import per.hx.bs.entity.yw.YwAppraisalRecordDO;
import per.hx.bs.vo.CountCheckUserVO;

import java.util.List;
import java.util.Map;

/**
 * @author HuXing
 * @date 2018/4/26  21:59
 */
@Component
public interface YwAppraisalRecordDao extends CrudDao<YwAppraisalRecordDO> {

    /**
     * 获取用户考核结果列表
     *
     * @param map 查询条件
     * @return 封装数据
     */
    List<YwAppraisalRecordDO> list(Map<String, Object> map);

    /**
     * 统计用户考核结果数量
     *
     * @param map 查询条件
     * @return 数量
     */
    int count(Map<String, Object> map);

    /**
     * 获取用户统计信息
     *
     * @param map 条件
     * @return 信息包装集合
     */
    List<CountCheckUserVO> selectListUserVO(Map<String, Object> map);

    /**
     * 统计数量
     *
     * @param map 条件
     * @return 数量
     */
    Integer countListUserVO(Map<String, Object> map);

    /**
     * 获取用户统计信息
     *
     * @param map 条件
     * @return 信息包装集合
     */
    CountCheckUserVO selectCheckUserVO(Map<String, Object> map);

    /**
     * 指标统计
     *
     * @param map 条件
     * @return 查询结果
     */
    List<Map<String, Object>> selectListAppraisalU(Map<String, Object> map);

    /**
     * 指标统计
     *
     * @param map 条件
     * @return 查询结果
     */
    List<Map<String, Object>> selectListAppraisalT(Map<String, Object> map);

}
